package com.cn.wanxi.servlet;

import com.cn.wanxi.model.NavModel;
import com.cn.wanxi.service.CompanyService;
import com.cn.wanxi.service.NavService;
import com.cn.wanxi.service.impl.CompanyServiceImpl;
import com.cn.wanxi.service.impl.NavServiceImpl;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.util.List;

@WebServlet("/home")//前台页面请求后台的地址
public class HomeServlet extends HttpServlet {
    //    熟悉doget和dopost的区别？
    //    熟悉servlet 的生命周期？
//    页面转发和重定向的区别？
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {

//        响应到某一个具体页面
//        为什么可以用req拿到值？
//        req是什么？
//        req容器：---作用域
//        servlet  的四大作用域
//
//        req.setAttribute("key", "value");
//        value值应该在数据实现层得到
        CompanyService companyService = new CompanyServiceImpl();
        req.setAttribute("company", companyService.getCompanyModel());

        NavService navService = new NavServiceImpl();
        List<NavModel> navModelList=navService.getNavModelList();
        req.setAttribute("navArray", navModelList);
//
//        NewsService newsService = new NewsService();
//        req.setAttribute("newsArray", newsService.getNewsArrayForHome());
        req.getRequestDispatcher("/jsp/home.jsp").forward(req, resp);//页面转发
//        resp.sendRedirect("/jsp/home.jsp");//重定向
    }
}
